package com.ang.function.biConsumer;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.BiConsumer;
import java.util.function.Consumer;

/**
 * BiConsumer，有入参，没返回
 */
public class BiConsumerTest1 {
    public static void main(String[] args) {
        Map<String,Integer> map = new HashMap<>();
        map.put("a", 1);
        map.put("b", 2);
        map.forEach(biConsumer);
        //等同于：
//        map.forEach((k,v)->{
//            biConsumer.accept(k,v);
//        });

        System.out.println("==========");

        List<String> list = Arrays.asList("a","b","c");
        list.forEach(consumer);
        //等同于：
//        list.forEach(l->{
//            consumer.accept(l);
//        });

        System.out.println("==========");

        biConsumer1.accept("s", 10);
    }


    //定义一个BiConsumer函数的实现，作为lambda参数
    static BiConsumer<String, Integer> biConsumer = (s, i)->{
        System.out.println(s+":"+i);
    };

    //定义一个Consumer函数的实现，作为lambda参数
    static Consumer<String> consumer = (s)->{
        System.out.println(s);
    };

    //定义一个BiConsumer函数的实现，手动执行
    static BiConsumer<String, Integer> biConsumer1 = (s, i)->{
        System.out.println(s+"对应"+i);
    };
}
